Skip to content

Conversation

@etr
Copy link
Owner

@etr etr commented Aug 11, 2019

Description of the Change

Prevents the library from tokenizing the URL of each http request. The URL is now tokenized when a read of the tokenized version is requested.

Quantitative Performance Benefits

Through callgrind we observed this operation was representing ~10% of the total processing cost of a request. This change eliminates it unless explicitly requested.

Possible Drawbacks

Multiple calls to the getter method are now more costly because the value is not cached.

Verification Process

Unit/integ tests. Validation of the approach through ab and callgrind.

Release Notes

The URL is now tokenized lazily when a read of the tokenized version is requested.

@codecov-io
Copy link

Codecov Report

Merging #154 into master will decrease coverage by <.01%.
The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff            @@
##           master    #154      +/-   ##
=========================================
- Coverage   95.31%   95.3%   -0.01%     
=========================================
  Files          35      35              
  Lines        3200    3197       -3     
=========================================
- Hits         3050    3047       -3     
  Misses        150     150
Impacted Files Coverage Δ
src/httpserver/http_request.hpp 95.23% <ø> (-0.6%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update cce5227...b4c307b. Read the comment docs.

@etr etr merged commit 28288a7 into master Aug 11, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants